home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / man / cmds.fmt / dvips.man < prev    next >
Encoding:
Text File  |  1991-01-15  |  30.5 KB  |  793 lines

  1.  
  2.  
  3.  
  4. DVIPS                     User Commands                     DVIPS
  5.  
  6.  
  7.  
  8. NNAAMMEE
  9.      dvips - convert a TeX DVI file to POSTSCRIPT
  10.  
  11. SSYYNNOOPPSSIISS
  12.      ddvviippss [ --cc _n_u_m ] [ --dd _n_u_m ] [ --ee _n_u_m ] [ --ff ] [ --hh _f_i_l_e ] [
  13.      --ll _n_u_m ] [ --mm ] [ --nn _n_u_m ] [ --oo _f_i_l_e ] [ --pp _n_u_m ] [ --qq ] [
  14.      --rr ] [ --ss ] [ --tt _m_o_d_e_n_a_m_e ] [ --xx _n_u_m ] [ --CC _n_u_m ] [ --DD _n_u_m ]
  15.      [ --FF ] [ --KK ] [ --MM ] [ --NN ] [ --PP _p_r_i_n_t_e_r_n_a_m_e ] [ --UU ] [ --XX
  16.      _n_u_m ] [ --YY _n_u_m ] [ --ZZ ] [ --?? ] _f_i_l_e[.dvi]
  17.  
  18. DDEESSCCRRIIPPTTIIOONN
  19.      The program ddvviippss converts a DVI file _f_i_l_e[.dvi] produced by
  20.      TeX (or by some other processor like GFtoDVI) and converts
  21.      it to POSTSCRIPT, normally sending the result directly to
  22.      the laserprinter.  The DVI file may be specified without the
  23.      ._d_v_i extension.  Fonts used may either be resident in the
  24.      printer or defined as bitmaps in PK files, or a `virtual'
  25.      combination of both.  If the MMaakkeeTTeeXXPPKK program is installed,
  26.      ddvviippss will automatically invoke METAFONT to generate fonts
  27.      that don't already exist.
  28.  
  29. OOPPTTIIOONNSS
  30.      Boolean flags that are turned on by certain letters (such as
  31.      -r to reverse pages) can be turned off by following the
  32.      option immediately with a 0 (as in -r0).  The options that
  33.      this can be used with are ffmmqqrrFFKKNNUUZZ.  The command line
  34.      switches are:
  35.  
  36.      --cc _n_u_m
  37.           Generate _n_u_m copies of every page.  Default is 1. (For
  38.           collated copies, see the --CC option below.)
  39.  
  40.      --dd _n_u_m
  41.           Set the debug flags.  This is intended only for emer-
  42.           gencies or for unusual fact-finding expeditions; it
  43.           will work only if ddvviippss has been compiled with the
  44.           DEBUG option.  The file _d_e_b_u_g._h in the sources indi-
  45.           cates what the values of _n_u_m can be.  Use a value of -1
  46.           for maximum output.
  47.  
  48.      --ee _n_u_m
  49.           Make sure that each character is placed at most this
  50.           many pixels from its `true' resolution-independent
  51.           position on the page. The default value of this parame-
  52.           ter is resolution dependent (it is the number of
  53.           entries in the list [100, 200, 300, 400, 500, 600, 800,
  54.           1000, 1200, 1600, 2000, 2400, 2800, 3200, ...] that are
  55.           less than or equal to the resolution in dots per inch).
  56.           Allowing individual characters to `drift' from their
  57.           correctly rounded positions by a few pixels, while
  58.           regaining the true position at the beginning of each
  59.           new word, improves the spacing of letters in words.
  60.  
  61.  
  62.  
  63. TeXware                   9 August 1990                         1
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. DVIPS                     User Commands                     DVIPS
  71.  
  72.  
  73.  
  74.      --ff   Run as a filter.  Read the DVI file from standard input
  75.           and write the POSTSCRIPT to standard output.  The stan-
  76.           dard input must be seekable, so it cannot be a pipe.
  77.           If you must use a pipe, write a shell script that
  78.           copies the pipe output to a temporary file and then
  79.           points dvips at this file.
  80.  
  81.      --hh _n_a_m_e
  82.           Prepend file _n_a_m_e as an additional header file. (How-
  83.           ever, if the name is simply `-', suppress all header
  84.           files from the output.)  This header file gets added to
  85.           the POSTSCRIPT userdict.
  86.  
  87.      --ll _n_u_m
  88.           The last page printed will be the first one numbered
  89.           _n_u_m. Default is the last page in the document.
  90.  
  91.      --mm   Specify manual feed for printer.
  92.  
  93.      --nn _n_u_m
  94.           At most _n_u_m pages will be printed out.  Default is
  95.           100000.
  96.  
  97.      --oo _n_a_m_e
  98.           The output will be sent to file _n_a_m_e. If no file name
  99.           is given, the default name is _f_i_l_e.ps; if this option
  100.           isn't given, the default name is !lpr.  If the first
  101.           character of the file name is an exclamation mark, then
  102.           the remainder will be used as an argument to popen;
  103.           thus, specifying !lpr as the output file will automati-
  104.           cally queue the file for printing.
  105.  
  106.      --pp _n_u_m
  107.           The first page printed will be the first one numbered
  108.           _n_u_m. Default is the first page in the document.
  109.  
  110.      --qq   Run in quiet mode.  Don't chatter about pages con-
  111.           verted, etc.; report nothing but errors to stderr.
  112.  
  113.      --rr   Stack pages in reverse order.  Normally, page one will
  114.           be printed first.
  115.  
  116.      --ss   Causes the entire global output to be enclosed in a
  117.           save/restore pair.  This causes the file to not be
  118.           truly conformant, and is thus not recommended, but is
  119.           useful if you are driving the printer directly and
  120.           don't care too much about the portability of the out-
  121.           put.
  122.  
  123.      --tt _m_o_d_e_n_a_m_e
  124.           This sets the mode to _m_o_d_e_n_a_m_e.  Currently, the only
  125.           modes allowable are: lleetttteerr, which selects _l_e_t_t_e_r size
  126.  
  127.  
  128.  
  129. TeXware                   9 August 1990                         2
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. DVIPS                     User Commands                     DVIPS
  137.  
  138.  
  139.  
  140.           (8.5 by 11 inch page); aa33, which selects _a_3 size; aa44,
  141.           which selects _a_4 size; lleeggaall, which selects _l_e_g_a_l size
  142.           (8.5 by 14 inches); lleeddggeerr, which selects _l_e_g_a_l size
  143.           (11 by 17 inches); llaannddssccaappee, which rotates the docu-
  144.           ment by ninety degrees.  The default page size is
  145.           _l_e_t_t_e_r.  The llaannddssccaappee option may be combined with any
  146.           of the others; doing so requires giving the --tt option
  147.           twice.  The upper left corner of each page in the DVI
  148.           file is placed one inch from the left and one inch from
  149.           the top.
  150.  
  151.      --xx _n_u_m
  152.           Set the magnification ratio to _n_u_m /1000. Overrides the
  153.           magnification specified in the DVI file.  Must be
  154.           between 10 and 100000.
  155.  
  156.      --CC _n_u_m
  157.           Create _n_u_m copies, but collated (by replicating the
  158.           data in the POSTSCRIPT file).  Slower than the --cc
  159.           option, but easier on the humans.
  160.  
  161.      --DD _n_u_m
  162.           Set the resolution in dpi (dots per inch) to _n_u_m. This
  163.           affects the choice of bitmap fonts that are loaded and
  164.           also the positioning of letters in resident POSTSCRIPT
  165.           fonts. Must be between 10 and 10000.  This affects both
  166.           the horizontal and vertical resolution.
  167.  
  168.      --FF   Causes control-D (ASCII code 4) to be appended as the
  169.           very last character of the POSTSCRIPT file.  This is
  170.           useful when ddvviippss is driving the printer directly, as
  171.           is common on extremely small systems, instead of work-
  172.           ing through a spooler.
  173.  
  174.      --KK   Removes comments from included graphics files.  Only
  175.           necessary when using brain-damaged spoolers or
  176.           POSTSCRIPT postprocessors that don't properly interpret
  177.           structured comments.
  178.  
  179.      --MM   Turns off the automatic font generation capability.
  180.  
  181.      --NN   Turns off structured comments; this might be necessary
  182.           on some systems that try to interpret POSTSCRIPT com-
  183.           ments in weird ways, or on some POSTSCRIPT printers.
  184.  
  185.      --PP _p_r_i_n_t_e_r_n_a_m_e
  186.           Sets up the output for the appropriate printer.  This
  187.           is implemented by reading in _c_o_n_f_i_g._p_r_i_n_t_e_r_n_a_m_e, which
  188.           can then set the output pipe (as in, o !lpr -Pprinter-
  189.           name) as well as the font paths and any other defaults
  190.           for that printer only.  It is recommended that all
  191.           standard defaults go in the one master _c_o_n_f_i_g._p_s file
  192.  
  193.  
  194.  
  195. TeXware                   9 August 1990                         3
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. DVIPS                     User Commands                     DVIPS
  203.  
  204.  
  205.  
  206.           and only things that vary printer to printer go in the
  207.           _c_o_n_f_i_g._p_r_i_n_t_e_r_n_a_m_e files.  Note that _c_o_n_f_i_g._p_s is read
  208.           before _c_o_n_f_i_g._p_r_i_n_t_e_r_n_a_m_e. In addition, another file
  209.           called ~/._d_v_i_p_s_r_c is searched for immediately after
  210.           _c_o_n_f_i_g._p_s; this file is intended for user defaults.  If
  211.           no --PP command is given, the environment variable
  212.           PPRRIINNTTEERR is checked.  If that variable exists, and a
  213.           corresponding _c_o_n_f_i_g.PPRRIINNTTEERR exists, then that confi-
  214.           guration file is read in.
  215.  
  216.      --UU   Turns off a virtual memory saving optimization that
  217.           triggers a bug in the Xerox 4045 POSTSCRIPT inter-
  218.           preter; not recommended unless you must generate output
  219.           to this printer.
  220.  
  221.      --XX _n_u_m
  222.           Set the horizontal resolution in dpi (dots per inch) to
  223.           _n_u_m.
  224.  
  225.      --YY _n_u_m
  226.           Set the vertical resolution in dpi (dots per inch) to
  227.           _n_u_m.
  228.  
  229.      --ZZ   Causes bitmap fonts to be compressed before they are
  230.           downloaded, thereby reducing the size of the POSTSCRIPT
  231.           font-downloading information.  Especially useful at
  232.           high resolutions or when very large fonts are used.
  233.           Will slow down printing somewhat, especially on early
  234.           68000-based POSTSCRIPT printers.
  235.  
  236.      --??   Print out the banner identifying the program.
  237.  
  238. CCOONNFFIIGG FFIILLEE OOPPTTIIOONNSS
  239.      The file _c_o_n_f_i_g._p_s (and the user's own ~/._d_v_i_p_s_r_c) can be
  240.      used to set many of the options to configure ddvviippss for a
  241.      particular site and printer.  These will probably be set up
  242.      by the installer, so normal users can skip this section.
  243.      The name and location of the config file can be changed at
  244.      installation time.  The environment variable TTEEXXCCOONNFFIIGG (if
  245.      it exists) is used as the path to configuration files.  Each
  246.      line of the file specifies a configuration option.  If the
  247.      initial character is a space, an asterisk, a pound sign, or
  248.      a semicolon, the line is ignored.  But if the initial char-
  249.      acter is an option like "o", for example, the remainder of
  250.      the line is considered to be a parameter.  The options are:
  251.  
  252.      ee _n_u_m
  253.           Sets the maximum drift parameter to _n_u_m dots (pixels)
  254.           as explained above.
  255.  
  256.      ff    Run as a filter by default.
  257.  
  258.  
  259.  
  260.  
  261. TeXware                   9 August 1990                         4
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268. DVIPS                     User Commands                     DVIPS
  269.  
  270.  
  271.  
  272.      hh _n_a_m_e
  273.           Add _n_a_m_e as a POSTSCRIPT header file to be downloaded
  274.           at the beginning.
  275.  
  276.      mm _n_u_m
  277.           _n_u_m is the virtual memory available for fonts and
  278.           strings in the printer.  Default is 180000.
  279.  
  280.      oo _n_a_m_e
  281.           The default output file is set to _n_a_m_e. As above, it
  282.           can be a pipe.
  283.  
  284.      pp _n_a_m_e
  285.           Sets the name of the file to read for PostScript font
  286.           mapping.  This file name defaults to psfonts.map, but
  287.           can be changed in the printer configuration file to
  288.           allow different printers to have different sets of
  289.           PostScript fonts.
  290.  
  291.      qq    Run in quiet mode by default.
  292.  
  293.      rr    Reverse the order of pages by default.
  294.  
  295.      ss    Enclose the entire document in a global save/restore
  296.           pair by default.  Not recommended, but useful in some
  297.           environments; this breaks the `conformance' of the
  298.           document.
  299.  
  300.      tt _m_o_d_e_n_a_m_e
  301.           This sets the mode to _m_o_d_e_n_a_m_e.  Currently, the only
  302.           modes allowable are: lleetttteerr, which selects _l_e_t_t_e_r size
  303.           (8.5 by 11 inch page); aa44, which selects _a_4 size;
  304.           lleeggaall, which selects _l_e_g_a_l size (8.5 by 14 inches);
  305.           llaannddssccaappee, which rotates a _l_e_t_t_e_r size document by
  306.           ninety degrees.  The default mode is _l_e_t_t_e_r. The upper
  307.           left corner of each page in the DVI file is placed one
  308.           inch from the left and one inch from the top.  The --tt
  309.           _m_o_d_e_n_a_m_e option will override this.
  310.  
  311.      DD _n_u_m
  312.           Sets the vertical and horizontal resolution to _n_u_m dots
  313.           per inch (dpi).
  314.  
  315.      EE _c_o_m_m_a_n_d
  316.           Executes the command listed; can be used to get the
  317.           current date into a header file for inclusion, for
  318.           instance.  Possibly dangerous; in many installations
  319.           this may be disabled, in which case a warning message
  320.           will be printed if the option is used.
  321.  
  322.      HH _p_a_t_h
  323.           The (colon-separated) path to search for POSTSCRIPT
  324.  
  325.  
  326.  
  327. TeXware                   9 August 1990                         5
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334. DVIPS                     User Commands                     DVIPS
  335.  
  336.  
  337.  
  338.           header files is _p_a_t_h.
  339.  
  340.      KK    Removes POSTSCRIPT comments from included POSTSCRIPT
  341.           graphics files.
  342.  
  343.      MM _m_o_d_e
  344.           Set _m_o_d_e as the METAFONT mode to be used when generat-
  345.           ing fonts.  This is passed along to MakeTeXPK and over-
  346.           rides mode derivation from the base resolution.
  347.  
  348.      NN    Disable POSTSCRIPT comments by default.
  349.  
  350.      PP _p_a_t_h
  351.           The (colon-separated) path to search for bitmap (PK)
  352.           font files is _p_a_t_h. The TEXPKS environment variable
  353.           will override this.  If a % character is found in _p_a_t_h,
  354.           the following substitutions will be made, and then a
  355.           search will be made for the resulting filenames.  A %f
  356.           is replaced by the font name.  A %d is replaced by the
  357.           font size in dots per inch (dpi).  A %p is replaced by
  358.           the font family.  This is always "pk".  A %m is
  359.           replaced by the font mode.  This is the _m_o_d_e given in
  360.           the MM option.
  361.  
  362.      RR _n_u_m _n_u_m ...
  363.           Sets up a list of default resolutions to search for PK
  364.           fonts, if the requested size is not available.  The
  365.           output will then scale the font found using POSTSCRIPT
  366.           scaling to the requested size.  Note that the resultant
  367.           output will be ugly, and thus a warning is issued.  To
  368.           turn this off, simply don't use such a line in the con-
  369.           figuration file.
  370.  
  371.      SS _p_a_t_h
  372.           The (colon-separated) path to search for special illus-
  373.           trations (encapsulated POSTSCRIPT files or psfiles) is
  374.           _p_a_t_h. The TEXINPUTS environment variable will override
  375.           this.
  376.  
  377.      TT _p_a_t_h
  378.           The (colon-separated) path to search for the tfm files
  379.           is _p_a_t_h. The TEXFONTS environment variable will over-
  380.           ride this. This path is used for resident fonts and
  381.           fonts that can't be otherwise found. It's usually best
  382.           to make it identical to the path used by TeX.
  383.  
  384.      UU    Turns off a memory-saving optimization; see the command
  385.           line option for more information.
  386.  
  387.      VV _p_a_t_h
  388.           The (colon-separated) path to search for virtual font
  389.           (VF) files is _p_a_t_h. This may be device-dependent, if
  390.  
  391.  
  392.  
  393. TeXware                   9 August 1990                         6
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400. DVIPS                     User Commands                     DVIPS
  401.  
  402.  
  403.  
  404.           you use virtual fonts to simulate actual fonts on dif-
  405.           ferent devices.
  406.  
  407.      WW _s_t_r_i_n_g
  408.           Sends _s_t_r_i_n_g to stderr, if it exists; otherwise it can-
  409.           cels another previous message.  This is useful in the
  410.           default configuration file if you want to require the
  411.           user to specify a printer, for instance, or if you want
  412.           to notify the user that the resultant output has spe-
  413.           cial characteristics.
  414.  
  415.      XX _n_u_m
  416.           Sets the horizontal resolution to _n_u_m dots per inch
  417.           (dpi).
  418.  
  419.      YY _n_u_m
  420.           Sets the vertical resolution to _n_u_m dots per inch
  421.           (dpi).
  422.  
  423.      ZZ    Compress all downloaded fonts by default.
  424.  
  425. PPAATTHH IINNTTEERRPPRREETTAATTIIOONN
  426.      All paths variables are the names of directories (path ele-
  427.      ments), separated by colons.  Each path element can be
  428.      either the literal name of a directory or one of the ~ forms
  429.      common under Unix.  If a path element is a single tilde, it
  430.      is replaced by the contents of the environment variable
  431.      HOME, which is normally set to the user's home directory.
  432.      If the path element is a tilde followed by anything, the
  433.      part after the tilde is interpreted as a user name, and his
  434.      home directory is fetched from the system password file and
  435.      used as the real path element.
  436.  
  437.      Where environment variables can override paths, an addi-
  438.      tional path element form is allowed.  If a path element is
  439.      the empty string, it is replaced with the system defaults.
  440.      Thus, to say (with an environment variable) to search the
  441.      user's home directory, followed by the system default paths,
  442.      the following command would be used:
  443.  
  444.           setenv TEXINPUTS ~:
  445.  
  446.      This is a path of two elements.  The first is the user's
  447.      home directory.  The second path element is the empty
  448.      string, indicating that the system defaults should be
  449.      searched.
  450.  
  451. PPOOSSTTSSCCRRIIPPTT FFOONNTT SSUUPPPPOORRTT
  452.      This version of dvips supports POSTSCRIPT fonts.  You need
  453.      TFM (TeX Font Metric) files for all fonts seen by TeX; they
  454.      can be generated from AFM (Adobe Font Metric) files by run-
  455.      ning the program aaffmm22ttffmm (which is described on its own
  456.  
  457.  
  458.  
  459. TeXware                   9 August 1990                         7
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466. DVIPS                     User Commands                     DVIPS
  467.  
  468.  
  469.  
  470.      manual page). That program also creates virtual fonts with
  471.      which you can use normal plain TeX conventions.  The set of
  472.      all resident fonts known to ddvviippss appears in the file
  473.      _p_s_f_o_n_t_s._m_a_p, which should be updated whenever you install a
  474.      new resident font. See aaffmm22ttffmm for examples and more infor-
  475.      mation on this file.
  476.  
  477. \\ssppeecciiaall OOPPTTIIOONNSS
  478.      This DVI driver allows the inclusion of POSTSCRIPT code to
  479.      be inserted in a TeX file via TeX's \special command.  For
  480.      compatibility with other systems, several different conven-
  481.      tions are supported.
  482.  
  483.      First, there's a flexible key-and-value scheme:
  484.  
  485.           \special{psfile="filename"[ key=value]*}
  486.  
  487.      This will download the POSTSCRIPT file called _f_i_l_e_n_a_m_e such
  488.      that the current point will be the origin of the POSTSCRIPT
  489.      coordinate system.  If the _f_i_l_e_n_a_m_e string begins with the `
  490.      (grave accent) character then the remainder of the _f_i_l_e_n_a_m_e
  491.      field is treated as a Unix Bourne shell script to be exe-
  492.      cuted with its _s_y_s_o_u_t down loaded as a POSTSCRIPT file.  For
  493.      example:
  494.  
  495.           \special{psfile="`zcat packed.ps" ...}
  496.  
  497.      will uncompress the file _p_a_c_k_e_d._p_s._Z for inclusion in ddvviippss
  498.      output.
  499.  
  500.      The optional key/value assignments allow you to specify
  501.      transformations on the POSTSCRIPT in _f_i_l_e_n_a_m_e. The possible
  502.      keys are:
  503.           hoffset        The horizontal offset (default 0)
  504.           voffset        The vertical offset (default 0)
  505.           hsize          The horizontal clipping size (default 612)
  506.           vsize          The vertical clipping size (default 792)
  507.           hscale         The horizontal scaling factor (default 100)
  508.           vscale         The vertical scaling factor (default 100)
  509.           angle          The rotation (default 0)
  510.      The hoffset, voffset, hsize, and vsize are given in
  511.      POSTSCRIPT units (1/72 of an inch), called bp elsewhere in
  512.      TeX; these are the units of the default coordinate system
  513.      assumed to be valid in the POSTSCRIPT file.  The hscale and
  514.      vscale are given in non-dimensioned percentage units, and
  515.      the rotate value is specified in degrees.  Thus
  516.  
  517.           \special{psfile=foo.ps hoffset=72 hscale=90 vscale=90}
  518.  
  519.      will shift the graphics produced by file _f_o_o._p_s right by 1",
  520.      and will draw it at 0.9 normal size.  If either hsize or
  521.      vsize is specified, the figure will be clipped to a
  522.  
  523.  
  524.  
  525. TeXware                   9 August 1990                         8
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532. DVIPS                     User Commands                     DVIPS
  533.  
  534.  
  535.  
  536.      rectangular region from (0,0) to (hsize,vsize) in default
  537.      coordinates, after scaling, translation, and/or rotation.
  538.      Otherwise no clipping will be done.  Offsets are given rela-
  539.      tive to the point of the \special command, and are unaf-
  540.      fected by scaling or rotation. Rotation is counterclockwise
  541.      about (0,0).  The order of operations is: Take the
  542.      POSTSCRIPT figure, rotate it, then scale it, then offset it,
  543.      then clip it. For example, if you want to extract a
  544.      one-inch-square figure bounded by (100,200), (172,200),
  545.      (172,272), and (100,272) in the POSTSCRIPT coordinates of
  546.      the graphic in cropthis.ps, you would say
  547.  
  548.           \special{psfile=cropthis.ps
  549.                     hoffset=-100 yoffset=-200
  550.                     hsize=72 vsize=72}
  551.  
  552.      Secondly, if your file conforms to the _E_n_c_a_p_s_u_l_a_t_e_d _P_o_s_t
  553.      _S_c_r_i_p_t (EPS) conventions, then it is possible to use a
  554.      simpler \\ssppeecciiaall command that will automatically reserve the
  555.      required space.
  556.  
  557.      To use, simply say
  558.  
  559.           \input epsf           % at the beginning of your TeX document
  560.           \epsfbox{filename.ps} % at the place where you want the figure
  561.  
  562.      A _v_b_o_x of the appropriate size for the bounding box will be
  563.      built. The height and width of this vbox will be the height
  564.      and width of the figure; the depth of the vbox will be zero.
  565.      By default, the graphic will have its `natural' width.  If
  566.      you wish to enlarge or reduce it, simply set the dimension
  567.      `\epsfxsize' to something else, such as `\hsize'; the figure
  568.      will be scaled so that \epsfxsize is its final width.  A
  569.      more general facility for sizing is available by defining
  570.      the `\epsfsize' macro.  This macro is used to give \epsfx-
  571.      size a value each time \epsffile is called.  It takes two
  572.      parameters; the first is the horizontal natural size of the
  573.      POSTSCRIPT figure, and the second is the vertical natural
  574.      size.  (Natural size, in this case, is the size in
  575.      POSTSCRIPT points from the bounding box comment.)  The
  576.      default definition of this macro is
  577.  
  578.           \def\epsfsize#1#2{\epsfxsize}
  579.  
  580.      which just means to take the value that was set before the
  581.      macro was invoked.  Note that the variable \epsfxsize is
  582.      reset to zero at the end of each call to \epsffile.  You can
  583.      redefine this macro to do almost anything.  It must return
  584.      the xsize to use, or 0 if natural scaling is to be used.
  585.      Common uses include:
  586.  
  587.           \epsfxsize  % just leave the old value alone
  588.  
  589.  
  590.  
  591. TeXware                   9 August 1990                         9
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598. DVIPS                     User Commands                     DVIPS
  599.  
  600.  
  601.  
  602.           0pt         % use the natural sizes
  603.           #1          % use the natural sizes
  604.           \hsize      % scale to full width
  605.           0.5#1       % scale to 50% of natural size
  606.           \ifnum#1>\hsize\hsize\else#1\fi  % smaller of natural, hsize
  607.  
  608.      The resultant vbox can be centered with \centerline, or
  609.      treated as any other vbox.  If you are using LaTeX and the
  610.      center environment, be sure to execute a \leavevmode before
  611.      each use of \epsffile, so that LaTeX leaves the vertical
  612.      mode and enters the paragraph making mode.  (This should
  613.      probably be provided by the LaTeX macros themselves.)
  614.  
  615.      (The \epsfbox macro does its job by scanning filename.ps for
  616.      a standard `BoundingBox' comment. The figure is clipped to
  617.      the size of that bounding box. If the bounding box is not
  618.      found, a bounding box of `72 72 540 720' is assumed.  If the
  619.      POSTSCRIPT file to be included is not EPSF, you are probably
  620.      better off using the _p_s_f_i_l_e special instead.)
  621.  
  622.      Thirdly, there are special commands for drawing diagrams
  623.      using the conventions of `TPIC' (a portable,
  624.      non-POSTSCRIPT-dependent program by Tim Morgan, with
  625.      POSTSCRIPT implementation by Dorab Patel). For example,
  626.      `\special{pn 2}' in this language sets the pen size to .002
  627.      inch.
  628.  
  629.      A fourth type of \special allows you to write POSTSCRIPT
  630.      instructions that will be passed literally to dvips's output
  631.      file. These are intended for people whose favorite graphics
  632.      language is raw POSTSCRIPT.
  633.  
  634.           \special{" _t_e_x_t}
  635.  
  636.      includes _t_e_x_t literally in the output POSTSCRIPT document,
  637.      after translating the origin to the current page position,
  638.      opening a special user dictionary, and and reverting to the
  639.      POSTSCRIPT convention of 72 units=1in.
  640.  
  641.           \special{! _t_e_x_t}
  642.  
  643.      includes _t_e_x_t literally in the prolog (before all typeset-
  644.      ting is done), putting definitions in the special diction-
  645.      ary; this is good for definitions you intend to use with
  646.      \special{"}.  Note that _d_v_i_p_s will always include such spe-
  647.      cials in the prolog, unless they occur on pages after the
  648.      last page printed.  This allows correct printing of selected
  649.      pages, even when literal POSTSCRIPT definitions are used,
  650.      provided that you give definitions before their first use.
  651.  
  652.      A fifth type of \special allows literal POSTSCRIPT instruc-
  653.      tions to be inserted _w_i_t_h_o_u_t enclosing them in an invisible
  654.  
  655.  
  656.  
  657. TeXware                   9 August 1990                        10
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664. DVIPS                     User Commands                     DVIPS
  665.  
  666.  
  667.  
  668.      protective shield; users of this feature are supposed to
  669.      understand what they are doing (and they shouldn't change
  670.      the POSTSCRIPT graphics state unless they are willing to
  671.      take the consequences). This command can take many forms,
  672.      because it has had a tortuous history; any of the following
  673.      will work:
  674.  
  675.           \special{ps:_t_e_x_t}
  676.           \special{ps::_t_e_x_t}
  677.           \special{ps::[begin]_t_e_x_t}
  678.           \special{ps::[end]_t_e_x_t}
  679.  
  680.      (with longer forms taking precedence over shorter forms,
  681.      when they are used).  Exception: The command
  682.  
  683.           \special{ps: plotfile _f_i_l_e_n_a_m_e}
  684.  
  685.      will copy the commands from _f_i_l_e_n_a_m_e verbatim into dvips's
  686.      output (but omitting lines that begin with %).  An example
  687.      of the proper use of literal specials can be found in the
  688.      file rroottaattee..tteexx,, which makes it easy to typeset text turned
  689.      90 degrees.
  690.  
  691.      Finally, there are two special cases of \special, which pro-
  692.      vide alternatives to certain dvips command-line options: (1)
  693.      You may put the command
  694.  
  695.           \\ssppeecciiaall{{llaannddssccaappee}}
  696.  
  697.      anywhere in your document (except after the final page
  698.      selected for printing), and the entire document will be
  699.      printed in landscape mode.  (2) The command
  700.  
  701.           \\ssppeecciiaall{{hheeaaddeerr==_f_i_l_e_n_a_m_e}}
  702.  
  703.      may be used to add _f_i_l_e_n_a_m_e as a header file (i.e., a file
  704.      that will be downloaded before the start of processing).
  705.      This is usually used for Macintosh header files.  The header
  706.      file will be added to the POSTSCRIPT userdict.
  707.  
  708.      For special effects, if any of the macros _b_o_p-_h_o_o_k,
  709.      _e_o_p-_h_o_o_k, _s_t_a_r_t-_h_o_o_k, or _e_n_d-_h_o_o_k are defined in the
  710.      POSTSCRIPT userdict, they will be executed at the beginning
  711.      of a page, end of a page, start of the document, and end of
  712.      a document, respectively.  When these macros are executed,
  713.      the default POSTSCRIPT coordinate system is in effect.  Such
  714.      macros can be defined in headers added by the --hh option or
  715.      the hheeaaddeerr== special, and might be useful for writing, for
  716.      instance, DRAFT across the entire page, or, with the aid of
  717.      a shell script, dating the document.  These macros are exe-
  718.      cuted outside of the save/restore context of the individual
  719.      pages, so it is possible for them to accumulate information,
  720.  
  721.  
  722.  
  723. TeXware                   9 August 1990                        11
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730. DVIPS                     User Commands                     DVIPS
  731.  
  732.  
  733.  
  734.      but if a document must be divided into sections because of
  735.      memory constraints, such added information will be lost
  736.      across section breaks.
  737.  
  738.      Several of the above tricks can be used nicely together.
  739.      For instance, a --PP file can be set up to print the date on
  740.      each page; the particular configuration file will execute a
  741.      command to put the date into a header file, which is then
  742.      included with a hh line in the configuration file.  Note that
  743.      multiple --PP options can be used.
  744.  
  745.      If the filename in any of the POSTSCRIPT inclusion options
  746.      begins with a backtick, that name is interpreted instead as
  747.      a command to be executed to generate the appropriate file.
  748.      The POSTSCRIPT must be generated to standard output by the
  749.      command.  This is useful, for instance, for uncompressing
  750.      large POSTSCRIPT files using zcat.
  751.  
  752. FFIILLEESS
  753.      For more information, see the manual dvips.tex distributed
  754.      with the program.
  755.  
  756.      Files used by dvips are usually system dependent, but the
  757.      following are typical:
  758.           the prolog dir           /usr/lib/tex/ps
  759.           the config dir           /usr/lib/tex/ps
  760.           the tfm dir              /usr/lib/tex/fonts/tfm
  761.           the font dir             /usr/lib/tex/fonts/pk
  762.           the virtual font dir     /usr/lib/tex/fonts/vf
  763.           the epsf/psfile dir      .:..:/usr/lib/tex/inputs
  764.  
  765. SSEEEE AALLSSOO
  766.      mf(1), afm2tfm(1), tex(1), latex(1), lpr(1)
  767.  
  768. NNOOTTEESS
  769.      POSTSCRIPT is a registered trademark of Adobe Systems Incor-
  770.      porated.
  771.  
  772. AAUUTTHHOORR
  773.      Tomas Rokicki <rokicki@neon.stanford.edu>; extended to vir-
  774.      tual fonts by Don Knuth.
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.  
  789. TeXware                   9 August 1990                        12
  790.  
  791.  
  792.  
  793.